export type SpacingMarker = {
  el: HTMLElement;
  appendToEl: HTMLElement;
  useBoundingClientRect: boolean;
  getRect?: (element: HTMLElement) => RectAttr;
  selectedColor: string;
  targetColor: string;
  zIndex: number;
  scale: number;
  onRangingChange: (ranging: { top: number; bottom: number; left: number; right: number }) => void;
  start: (el?: HTMLElement, appendToEl?: HTMLElement) => void;
  end: (el?: HTMLElement) => void;
  updateScale: (scale: number) => void;
  clean: () => void;
};

export type RectAttr = {
  top: number;
  bottom: number;
  left: number;
  right: number;
  width: number;
  height: number;
};

export type Direction = 'top' | 'right' | 'bottom' | 'left';
export const directionArr = ['top', 'right', 'bottom', 'left'];
export type PlaceholderType = 'selected' | 'target';
export const placeholderArr = ['selected', 'target'];
